﻿// ---------------------------------------------------------------------
// Partial của lớp SSupervisor
//
// Nội dung:
//    + Các hàm gửi message trong lượt Draw Phase
//
// Copyright (c) 2009 YugiOH
//
// Nguyễn Hữu Lê Trọng Tín      YM: ilu2009             ĐT: 0906520611 
// Võ Phước Hậu                 YM: phuochauspkt        ĐT: 0979202707
// ---------------------------------------------------------------------



using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using Common;

namespace ServerYuGi
{
    public partial class SSupervisor
    {
        /// <summary>
        /// Gửi message đến tất cả player để báo Drawphase bắt đầu
        /// </summary>
        /// <param name="IDPlayerRutBai">ID player sẽ rút bài</param>
        public void SendMessage_TURN_DRAWPHASE_BEGIN_ToAll(int IDPlayerRutBai)
        {
            //ServerSocket.SendMessageToEveryOne(YMSG.TURN_DRAWPHASE_BEGIN, IDPlayerRutBai);
            Table.SendMessageAll(YMSG.TURN_DRAWPHASE_BEGIN, IDPlayerRutBai);
        }

        /// <summary>
        /// Gửi message đến tất cả player báo kết thúc Drawphase
        /// </summary>
        /// <param name="IDPlayer">ID player kết thúc Drawphase</param>
        public void SendMessage_TURN_DRAWPHASE_END_ToAll(int IDPlayer)
        {
            //ServerSocket.SendMessageToEveryOne(YMSG.TURN_DRAWPHASE_END, IDPlayer);
            Table.SendMessageAll(YMSG.TURN_DRAWPHASE_END, IDPlayer);
        }

        /// <summary>
        /// Gửi message đến 1 player, kèm theo lá bài (CardTypeID và ID) đã được rút
        /// </summary>
        /// <param name="IDPlayer">ID player</param>
        /// <param name="CardTypeID">Loại lá bài</param>
        /// <param name="ID_IN_GAME">ID lá bài trong ván</param>
        public void SendMessage_CARD_RUTBAI_ToID(int IDPlayer,int CardTypeID,int ID_IN_GAME )
        {            
            //Table.SendMessageToID(IDPlayer, YMSG.CARD_RUTBAI, CardTypeID, ID_IN_GAME); //old
            List<byte> data = new List<byte>();
            data.AddRange(BitConverter.GetBytes(CardTypeID));
            data.Add((byte)ID_IN_GAME);
            Table.SendMessageToID(IDPlayer, YMSG.CARD_RUTBAI, data.ToArray());  // new
        }

        public void SendMessage_CARD_RUTBAI_DOITHU_ToID(int IDPlayer)
        {
            //ServerSocket.SendMessageToID(IDPlayer, YMSG.CARD_RUTBAI_DOITHU);
            Table.SendMessageToID(IDPlayer, YMSG.CARD_RUTBAI_DOITHU);
        }
        
    }
}
